<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Vue中样式</title>
    <script src="../lib/vue.main.js"></script>
    <style>
        .red{
            color: red;
        }

        .thin{
            font-weight: 200;
        }

        .italic{
            font-style: italic;
        }

        .active{
            letter-spacing: 0.5em;
        }
    </style>
</head>

<body>
    <div id="app">
        <h1 class="red thin">大家都是蔡徐坤</h1>
        <!-- 第一种使用方式，直接传递一个数组，这里的class需要使用v-bind做数据绑定 -->
        <h1 :class="['red', 'thin']">大家都是蔡徐坤</h1>
        <!-- 第二种使用方式，在数组中使用三元表达式 -->
        <h1 :class="['red', 'thin', flag?'active':'']">大家都是蔡徐坤</h1>
        <!-- 第三种方式，在数组中使用对象来代替三元表达式，提高代码的可读性 -->
        <h1 class="['red' 'thin', {'active':flag}]">大家都是蔡徐坤</h1>
        <h1 :class="{red:true, thin:false, italic:true, active:true}">蔡徐坤</h1>
        <!-- 在为class使用v-bind绑定对象的时候，对象的属性是类名，由于对象的属性可带引号，也可不带引号,属性的值是一个标识符 -->
        <h1 :class="classobj">蔡徐坤</h1>
    </div>
    <script>
        var vm=new Vue({
           el:'#app',
           data:{
               flag: true,
               classobj: { red: true, thin: true, italic: true, active: true}
           },
           methods:{}
        });
    </script>
</body>

</html>